Principal Software Engineering - Rust Systems Engineer

Software EngineeringHybrid Remote, Burlington, Massachusetts


We are Progress (Nasdaq: PRGS) - the trusted provider of software that enables our customers to develop, deploy and manage responsible, AI-powered applications and experiences with agility and ease.  
 
We’re proud to have a diverse, global team where we value the individual and enrich our culture by considering varied perspectives because we believe people power progress. Join us as a Principal Software Engineer – Rust Systems Engineer and help us do what we do best: propelling business forward.  This will be a hybrid role working between your home office and our Burlington MA headquarters.  Candidates must be local to that office to be considered as we can’t provide any relocation packages at this time.

Progress is currently hiring a Rust Systems Engineer to join our OpenEdge Core Engineering team. This is an opportunity for an expert systems programmer who wants to make a lasting impact by introducing Rust into a 30-year-old, mission-critical production database engine — and who has the technical leadership skills to bring an entire engineering organization along for the journey.
 
Progress Software (NASDAQ: PRGS) is a 30+ year strong software company headquartered in Burlington, MA. Our core product, OpenEdge, is a mature, multi-platform RDBMS engine powering thousands of mission-critical business applications worldwide across healthcare, manufacturing, finance, and government. The codebase spans 200+ subsystems and 10,000+ C/C++ source files — running on Linux x86_64 and Windows with a heritage of reliability and strict backward compatibility.
 
We are at a strategic inflection point: selectively introducing Rust into the OpenEdge engine to improve memory safety, unlock new platforms (macOS, ARM/Graviton, NUMA), and build new subsystems (Apache Iceberg, Avro, Kafka CDC) on a modern foundation — while preserving the stability our customers depend on.
 
You will be embedded in the OpenEdge Core Engineering team — the group responsible for the internals of the database engine, server operations, shared-memory IPC, multi-threaded utilities, and enterprise features such as partitioning, multi-tenancy, disaster recovery, and security. You will serve as the Rust technical lead across multiple sub-teams: Iceberg/Avro, PASOE/Transport, Platform Portability, and Kafka/CDC. You will also found and lead the Rust Guild — a weekly cross-team learning and code-review forum whose goal is to grow 3–4 existing C/C++ engineers into independent Rust contributors within twelve months.
 
In this role, you will: 

Rust Platform & Build Integration

  • Integrate Rust (Cargo-based workflows) into the existing CMK (custom Make) build system so Rust shared libraries (.so/.dll) compile, link, and ship alongside 200+ C subsystems across Linux x86_64 and Windows 64-bit.
  • Define and standardize Rust ↔ C FFI architecture, including: 
    • Extern "C" boundary design
    • Auto-generated C headers (via cbindgen)
    • Error-handling conventions
    • Memory ownership and lifetime rules
    • Establish Rust as a first-class, supportable language within the core database engine.

Core Systems Libraries

  • Design and deliver production-grade Rust shared libraries that replace legacy C implementations, including: 
    • Compression: A Rust-based zstd-backed compression library replacing legacy RDC with drop-in C APIs.
    • JSON Parsing: A memory-safe, multi-threaded Rust JSON parser using serde_json to eliminate known leak and corruption vectors from legacy YAJL-based components.
    • Avro Serialization: A foundational Avro encode/decode layer supporting OpenEdge ↔ Apache Avro type mappings for Apache Iceberg integration.
  • Own benchmarking, validation, and parity testing to ensure Rust replacements meet or exceed legacy performance and stability.

Platform & Architecture Leadership

  • Architect and lead a Rust-based platform systems layer replacing System V IPC with modern, cross-platform primitives (mmap, POSIX shared memory, futex-style synchronization).
  • Enable: 
    • macOS developer builds
    • ARM / Graviton production deployments with significant cost-efficiency gains
  • Design NUMA-aware memory allocation strategies for multi-socket, high-throughput production servers using hwloc.
  • Guide Tier-3 Rust crates covering cloud file I/O, Iceberg table operations, and engine integration bridges.
 Async & Networking Modernization
  • Architect an async gRPC server using tonic, tower, and tokio modernize the PASOE data path and replace Tomcat/HTTP-based flows.
  • Design middleware layers for authentication (JWT), observability, and performance isolation with a focus on multi x throughput improvements.
 Engineering Enablement & Code Quality
  • Act as the Rust code owner across the organization: 
    • Review all Rust PRs
    • Enforce idiomatic Rust, safe unsafe usage, and consistent FFI patterns
  • Mentor senior C/C++ engineers transitioning into Rust through: 
    • Pair programming
    • Structured code reviews
    • Hands-on module translation exercises
Community, Leadership & Communication
  • Lead the Rust Guild, hosting regular technical sessions covering: 
    • FFI design patterns
    • Async Rust
    • PR walkthroughs and architectural deep dives
  • Communicate architectural decisions, trade-offs, and migration strategy clearly to senior leadership and cross-functional stakeholders.
  • Partner with management on: 
    • Rust adoption standards
    • Long-term platform strategy
    • Hiring plans and senior Rust capability expansion
 Your background: 
  • Overall 10+years of Software Engineering Experience with, Must have 5+ years of production Rust in systems-level software — database engines, OS components, embedded systems, network infrastructure, or similar.
  • Strong C/C++ background — ability to read, understand, and interface with 10,000+ files of C code daily; you need to think fluently in both languages.
  • FFI expertise — production experience with Rust ↔ C interop: extern "C", cbindgen/bindgen, unsafe boundary design, and memory-ownership protocols across language boundaries.
  • Shipped shared libraries — experience building .so/.dll Rust libraries consumed by C/C++ callers in production environments.
  • Build system integration — experience integrating Cargo with non-Cargo build systems (Make, CMake, Bazel, or custom frameworks).
  • Multi-platform development — Linux x86_64 and Windows 64-bit at minimum.
  • Experience implementing software using OS fundamentals: file-system and storage management, memory management, virtual memory, process synchronization, and multithreading.
  • Strong problem analysis and solving skills; works independently and meets tight deadlines.
  • Excellent verbal and written communication skills in English.
  • Mentorship / tech-lead experience — you will be training a team, not just writing code.
  • A degree in Computer Science or equivalent foundational experience covering data structures, algorithms, operating systems, and database fundamentals.
 Additionally, it would be beneficial if you have: 
  • Database internals — shared memory, buffer pools, WAL, concurrency control, storage engines.
  • gRPC / tonic — production experience building async gRPC services in Rust with tower middleware, prost code generation, and tonic-web for browser compatibility.
  • Apache Arrow / Parquet / Iceberg / Avro ecosystem experience.
  • NUMA-aware programming — hwloc, mbind(), set_mempolicy(), per-node allocation strategies.
  • Memory allocator design — arena/region allocators, custom allocator traits in Rust, jemalloc/mimalloc integration.
  • io_uring / async I/O — experience with modern Linux I/O or Rust tokio runtime for systems work.
  • macOS and ARM/Graviton platform experience.
  • Familiarity with AI-assisted development tools (GitHub Copilot, Claude) for code translation and pair programming workflows.
Base Salary Range: $170,000 - $189,000
This position is also eligible to participate in our performance-based annual corporate bonus plan.  Final base compensation is determined by a number of factors, including but not limited to job-related skills, education, demonstrable experience, and allowance for future and continued salary growth. We also offer a robust benefits package, with details below.
 

If this sounds like you and fits your experience and career goals, we’d be happy to chat.   

What we offer in return is the opportunity to experience a great company culture with wonderful colleagues to learn from and collaborate with and also to enjoy:  

  • Medical, dental, vision, life & disability, and financial benefits (including 401(k) retirement savings plan. Tuition Reimbursement program. Additional voluntary benefits including crucial illness/hospital indemnity, identity theft protection, auto & home insurance, legal, and pet insurance. 
  • Competitive salary, bonus, and best-in-class Employee Stock Purchase Program (ESPP) with a 27-month lookback
  • Flexible paid vacation time, paid day off for your birthday, and company holidays. A variety of leave plans, including Parental Leave.
  • Employee Assistance Program (EAP) and an employee well-being program focusing on physical, mental, and financial health. 
 
Apply Now!
 
#LI-hybrid
 
 

Together, We Make Progress

Progress is an inclusive workplace where opportunities to succeed are available to everyone. As a multicultural company serving a global community, we encourage a wide range of points of view and celebrate our diverse backgrounds. Our unique combination of perspectives inspires innovation, connects us to our customers and positively affects our communities. It is only by working together and learning from each other that we make Progress. Join us!